package com.jprocms.module.cms.convert.voteitem;

import com.jpro.framework.common.pojo.PageResult;
import com.jprocms.module.cms.controller.admin.voteitem.vo.*;
import com.jprocms.module.cms.dal.dataobject.voteitem.VoteItemDO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;

import java.util.List;

/**
 * 投票项 Convert
 *
 * @author jprocms
 */
@Mapper
public interface VoteItemConvert {

    VoteItemConvert INSTANCE = Mappers.getMapper(VoteItemConvert.class);

    VoteItemDO convert(VoteItemCreateReqVO bean);

    VoteItemDO convert(VoteItemUpdateReqVO bean);

    VoteItemRespVO convert(VoteItemDO bean);

    List<VoteItemRespVO> convertList(List<VoteItemDO> list);

    List<VoteItemDO> convertListForCreate(List<VoteItemCreateReqVO> list);

    List<VoteItemDO> convertListForUpdate(List<VoteItemUpdateReqVO> list);

    List<VoteItemDO> convertListForBase(List<VoteItemBaseVO> list);

    PageResult<VoteItemRespVO> convertPage(PageResult<VoteItemDO> page);

    List<VoteItemExcelVO> convertList02(List<VoteItemDO> list);

}
